package chapter_13_proxy.virtual_proxy;

import chapter_13_proxy.normal_proxy.RealSubject;
import chapter_13_proxy.normal_proxy.Subject;

/**
 * @author yaochenglong
 * @date 2017/10/19
 * 用到了normal_proxy包下的类
 */
public class VirtualProxy implements Subject{

    //要代理哪个实现类
    private Subject subject;

    //实现接口中定义的方法
    @Override
    public void request() {
        //判断一下真实主题是否初始化
        if(subject == null){
            subject = new RealSubject();
        }
        subject.request();
    }
}
